home *** CD-ROM | disk | FTP | other *** search
- vc - frontend for Amiga version of vbcc (c) in 1995 by Volker Barthelmann
-
-
- INTRODUCTION
-
- vc calls the preprocessor, compiler, assembler and linker.
- It should be somewhat Unix cc compatible.
-
-
- LEGAL
-
- vc is (c) in 1995 by Volker Barthelmann. All code is written by me
- and may be freely redistributed as long as no modifications are made
- and nothing is charged for it.
-
-
- INSTALLATION
-
- This may change in following versions.
-
- First set Your stack not too low. I have not tested how much stack
- vbcc needs, some 10k will probably be enough.
-
- At the moment vc calls an external preprocessor, so this one must be
- in the path and You probably have to make an assign to tell the
- preprocessor the directories that contain the vbcc includes (and the os
- includes, if You have them) - this depends on the preprocessor You
- chose.
- E.g. if You use dcpp from the FreeDice-archive on aminet, You have to
-
- assign dinclude: machines/amiga68k/include [Your os-include-dir]
-
- Also You have to edit the -pp and -ppv options in the config file
- to call the preprocessor (see below) if You do not use dcpp.
- In the future vbcc will probably have a builtin preprocessor.
-
- vbcc, FreePhxAss and Your linker must also be in the path and vlib: must
- be assigned to vbcc's lib directory (vbcc/machines/amiga68k/lib).
-
- Also You should assign vbcc: to a directory and/or put a config file
- (see CONFIG) in vbcc: or env:. If You do neither of this, You will get
- an annoying requester even if You use the default config of vc.
-
- In the default configuration, vc will call dcpp as preprocessor,
- FreePhxAss as assembler and blink as linker. You can change this
- with the following command line options (which can be put in a config
- file).
-
- -pp=string The preprocessor will be called like in
- printf(string,infile,outfile), e.g. the default for dcpp
- would be "-pp=dcpp %s >%s"
-
- -as=string The same for the assembler. The default would be
- "-as=FreePhxAss opt ! quiet %s to %s".
- You probably don't have to change this.
-
- -rm=string This is the string for the delete command and takes only
- one argument. The default would be "-rm=delete quiet %s".
- You probably don't have to change this.
-
- -ld=string This is for the linker and takes three arguments. The first
- one are the object files (separated by spaces), the second
- one the user specified libraries and the last one the name
- of the resulting executable.
- This command has to link with vlib:startup.o as first object
- file and vlib:vc.lib and vlib:amiga.lib as the last libraries.
- The appropriate (and default) line for blink/slink would be
- "-ld=blink vlib:startup.o %s lib %s vlib:vc.lib vlib:amiga.lib
- to %s"
- For PhxLnk You could use
- "-ld=PhxLnk vlib:startup.o %s %s vlib:vc.lib vlib:amiga.lib
- to %s"
-
- All those strings should tell the command to omit any output apart from
- error messages if possible. However for every of those options there
- exists one with an additional 'v', i.e. -ppv=, -asv=, etc. which should
- produce some output, if possible.
- If vc is invoked with the -vv option the verbose commands will be called,
- if not the quiet ones will be used.
-
-
- CONFIG
-
- vc looks for a config file named 'vc.config' in ENV: and VBCC:. If
- it is found it will be treated as a collection of additional command
- line arguments. Every line of the file will be used as one argument,
- so no quoting shall be used and every argument must go in its own
- line.
- There should be an example vc.config.
-
-
- USAGE
-
- vc [options] file1 file2 ...
-
- Processes all files according to their suffix and links all objects
- together (unless any of -E, -S, -c is specified). It recognizes the
- following file types:
-
- .c C source
- .i already preprocessed C source
- .asm
- .s assembler source
- .obj
- .o object file
-
- With dos.library >=36 pattern matching is supported.
-
- The options recognized by vc are:
-
- -v verbose; print all commands
-
- -vv very verbose; display some internals, too
-
- -Ox optimization level; at the moment -O0 means -O=0 and -O2 means
- -O=1023; default is -O=1
-
- -o file save executable as file (default a.out); only works if the
- target is an executable
-
- -E do not compile, save the preprocessed C sources with .i suffix
-
- -S do not assemble, save the compiled files with .asm suffix
-
- -c do not link, .o suffix
-
- -k keep all intermediate files; by default all generated files
- except the source files and the targets are deleted
-
- -lulib link with library vlib:ulib.lib
-
-
- All other options are passed through to vbcc.
-
-
- Volker volker@vb.franken.de
-
-